Interaktivní šablony

Top  Prev  Next

PSPad od verze 3.6.1 umožňuje definovat interaktivní šablony.

Doporučuji napřed přečíst kapitolu, věnující se základům šablon

 

Co to znamená ?

Šablony dosud pracovaly tak, že na místo kurzoru se vložil text, definovaný v šabloně a nastavila se pozice kurzoru. Pak bylo třeba vložený text upravit.

Nyní máte možnost vložit šablonu včetně zadání hodnot, takže výsledek již není třeba upravovat a je to intuitivnější.

 

Příklad vložení HTML TAGu:

Dosud: vyvolala se šablona, vložila se do souboru a ručně se doplnily hodnoty, popř. se vymazaly vlastnosti, které nebyly třeba

Nyní: objeví se formulář, ve kterém si vyplníte některé hodnoty a pouze ty vyplněné se vloží do textu. To je samozřejmě možné kombinovat se stávajícími šablonami.

 

 

Jak to pracuje ?

Základem je definice ovládacích prvků v sekci [Macro definition] nejlépe na začátku šablony. Tyto ovládací prvky se pak velmi snadno použijí v šablonách.

A proč se definují zvlášť na ne přímo v šablonách ? Důvod je prostý. Spousta šablon používá shodné prvky a tak by se zbytečně zvětšil definiční soubor se šablonami a bylo by to také méně přehledné. A další výhodou je to, že pokud to změníte v této sekci, změnili jste to vlastně ve všech šablonách, kde je to použito.

 

Vícenásobné použití výsledku:

jméno ovládacího prvku je možno v definici šablony možné použít vícekrát. V tom případě se v dialogu objeví pouze jednou, ale zadaný text bude vložen na všechna místa výskytu (viz poslední příklad).

 

Formát

%prvek%=@x popisek,úvodní_text,výchozí,možnosti,oddělovač,typ_dialogu

 

%prvek% - toto jméno v definici šablony určuje, který ovládací prvek bude použit. Může obsahovat pouze znaky a čísla bez mezer.

@x - typ ovládacího prvku (viz. dále)

popisek - text, který se zobrazí před ovládacím prvkem

úvodní_text - text, který bude vložen do do textu před zadanou hodnotou (nepovinný)

výchozí - předvyplněná hodnota v ovládacím prvku (nepovinný)

možnosti - tato část je závislá na použitém ovládacím prvku (nepovinný) (viz dále)

oddělovač - znak(y), které budou vloženy do textu kolem hodnoty (nepovinný)

typ_dialogu - určuje, jak dopadne výsledek dialogu pro otevření souborů (nepovinný)

A (absolutní cesta) nebo R (relativní cesta) a druh lomítka. Viz definice ovládacích prvků.

 

Nepovinné části není třeba uvádět. Pouze je třeba dodržet počet oddělovacích čárek. Odzadu je možné cokoliv vynechat.

Pokud potřebujete zadat nějaké speciální znaky, např. čárku do výchozího textu nebo výchozí hodnoty, zavřete hodnotu do uvozovek. Viz příklad 3.

 

Přehled ovládacích prvků:

 

@-- = Oddělovač

@C = Rozbalovací seznam (Combo box)

@D = Dialog pro zadání data

@E = Editační pole

@F = Rozbalovací seznam pro výběr písma

@K = Zaškrtávací pole (Check box)

@L = Dialog pro výběr barvy

@O = Dialog pro otevření souboru

@P = Dialog pro otevření obrázku s náhledem

@S = Dialog pro výběr adresáře

@T = Editační pole s vyvoláním editoru Topstyle

 

Definice ovládacích prvků

 

Oddělovač (Separator)

nemá žádnou funkčnost, pouze zobrazí vodorovnou čáru

%sep%=@--

 

Editační pole (Edit)

zobrazí obyčené editační pole pro zadání obecné hodnoty

 

%edit1%=@E Číslo strany:,Page ,,,-

výsledek: Page -12-

%edit2%=@E Jméno autora

výsledek: Jan Fiala

 

Rozbalovací seznam (ComboBox)

zobrazí editační pole s rozbalovacím seznamem

řetězce v seznamu jsou uvedeny v sekci možnosti a jsou odděleny středníkem

Pokud řetězec obsahuje něco jiného než pouze písmena a čísla, je třeba jednotlivé položky uzavřít do uvozovek (viz druhý příklad)

 

%combo1%=@C Typ centrování:,CENTER=,left,left;right;center,"

%RGB%=@C RGB barva:,RGB=,,"255,255,255";"#FFFFFF";"FF;FF;FF";"FF FF FF","

 

výsledek: CENTER="left"

 

Rozbalovací seznam s fonty (FontBox)

zobrazí editační pole s rozbalovacím seznamem, naplněným názvy fontů, instalovaných v systému.

 

%fonts%=@F Font face:,font-face=,,,"

výsledek: font-face="Arial"

 

Dialog pro zadání data

zobrazí editační pole s kalendářem pro interktivní zadání data

 

%datum%=@D Datum:,DATE=,,,"

výsledek: DATE="12.2.2002"

 

Zaškrtávací pole (CheckBox)

zobrazí jednoduché zaškrtávací políčko. Pokud je zaškrtnuto, hodnota se v textu objeví. Je-li cokoliv uvedeno v sekci výchozí, políčko bude na formuláři zaškrtnuto

 

%check%=@K Bez stínu,NoShade

vysledek: NoShade

%check%=@K Nezapomenout,PAMATUJ,,,!!!

vysledek: !!!PAMATUJ!!!

 

Editační pole s dialogem pro soubor

zobrazí editační pole s tlačítkem vpravo, které umožní výběr a vložení souboru do pole. V sekci možnosti je možno definovat filtr na otevírané soubory. Pokud nebude maska uvedena, bude nastavena na všechny soubory

Nebude-li uveden typ dialogu, platí následující pravidla:

jde-li o HTML, bude nastavena relativní cesta a normální lomítka

nejedná-li se o HTML, bude nastavena absolutní cesta a obrácená lomítka

 

%file%=@O Odkaz:,href=,,html files (*.htm;*.html)|*.htm;*.html,"

výsledek: href="project/files/soubor.htm"

 

%file%=@O Odkaz:,,,PAS files (*.pas)|*.pas,',A\

výsledek: 'c:\temp\soubor.pas'

 

%file%=@O Odkaz:,,,C files (*.c)|*.pas,,R\\

výsledek: project\\source\\soubor.c

 

Editační pole s dialogem pro obrázek

podobně jako pole s dialogem pro soubor zobrazí editační pole s tlačítkem na vyvolání dialogu možnost výběru obrázku. Tento dialog obsahuje i náhled obrázku. Masku není třeba uvádět. Pro typ dialogu platí to samé jako pro dialog pro soubor.

Jsou-li součástí šablony makra, obsahující v názvu width a height, jsou do nich dosazeny aktuální rozměry obrázku

Jsou-li součástí šablony makra, obsahující v názvu alt nebo title, je do nich dosazen název a velikost obrázku, pokud je obsah prázdný

 

%pict%=@P Odkaz:,SOURCE=,,,"

výsledek: SOURCE="files\obrazek.png"

 

Editační pole s dialogem pro výběr adresáře

podobně jako pole s dialogem pro soubor zobrazí editační pole s tlačítkem na vyvolání dialogu pro výběr adresáře. Pro typ dialogu platí to samé jako pro dialog pro výběr souboru.

 

%pict%=@S Vytvoření adresáře:,CreateDirectory:,,,,A\

výsledek: CreateDirectory:c:\program files\novy adresar

 

Editační pole (Edit) s vyvoláním editoru CSS TopStyle

zobrazí obyčené editační pole pro zadání obecné hodnoty s tlačítkem, kterým je možno vyvolat TopStyle editor (více v menu HTML) pro editaci inline CSS

 

%style%=@T Styl,Style=,,,

 

Editační pole s dialogem pro výběr barvy

podobně jako pole s dialogem pro soubor zobrazí editační pole s tlačítkem na vyvolání dialogu pro výběr barvy. Pro typ dialogu platí to samé jako pro dialog pro výběr souboru.

 

%color%=@L Výběr barvy:,background:,,,"

výsledek: background="#623488"

 


Použití v šablonách - příklady

 

Příklad 1:

 

[Macro definition]

%file%=@O Odkaz:,href=,,html files (*.htm;*.html)|*.htm;*.html,"

...

[ahref | jednoduchý odkaz <a href=...>...</a>]

<a %file%>|</a>

 

Při vyvolání šablony se objeví formulář s editačním polem s  možností výběru souboru pomocí tlačítka a do textu se vloží:

<a HREF="vybraný soubor.htm"></a>

a kurzor bude stát mezi tagy na místě znaku "|"

 

Příklad 2:

 

[Macro definition]

%proc%=@E Jméno procedury:

%autor%=@E Jméno autora:

...

[proc | základ procedury]

// Procedura: %proc%

// Autor: %autor%

procedure %proc%;

begin

|

end; {procedure %proc%}

 

Při vyvolání šablony se objeví formulář se dvěma editačními poly pro zadání jména procedury a autora. Výsledek v textu bude vypadat:

 

// Procedura: UkazDialog

// Autor: Jan Fiala

procedure UkazDialog;

begin

 

end; {procedure UkazDialog}

 

Příklad 3:

 

[Macro definition]

%Number%=@E," ,",,,

[ahref | číslo s čárkou]

%number%

 

Při opakovaném vyvolávání šablony se do textu bude vkládat vždy čárka a hodnota:

,123, 456, 12, 5